using System.Collections.Generic;
using CxRomos.Core.Domain.Entities;
using StructureMap;

namespace CxRomos.Core.DataAccess {
    [PluginFamily("Default")]
    public interface IPermissionRepository {
        List<Permission> GetAllPermissions();
        List<Permission> GetPermissionsByAccountId(int accountId);
        List<Permission> GetPermissionByName(string name);
        List<Permission> GetPermissionById(int permissionId);
        void SavePermission(Permission permission);
        void DeletePermission(Permission permission);
        void SavePermissions(List<Permission> permissions);

        void CommitChanges();
    }
}